package com.mtao;

import com.mtao.entity.SysRole;
import org.springframework.security.core.GrantedAuthority;

import java.util.List;

public interface SysRoleService {

    /**
     * 获取角色列表
     * @return
     */
    List<com.mtao.entity.SysRole> findRoleList();

    /**
     * 通过用户ID获取当前用户角色
     * @param userId
     * @return List<SysRole>
     */
    List<com.mtao.entity.SysRole> getRoleByUserId(Integer userId);

    /**
     * 获取用户当前角色列表
     * @param id
     * @return
     */
    List<GrantedAuthority> getRolesByUser(Integer id);

    /**
     * 新增角色
     * @param sysRole
     * @return
     */
    void addRole(com.mtao.entity.SysRole sysRole);

    /**
     * 删除角色
     * @param id
     * @return
     */
    void deleteRole(Integer id);
    /**
     * 根据角色名查询
     * @param roleName
     * @return
     */
    boolean queryRoleName(String roleName);

    /**
     * 更新角色
     * @param sysRole
     */
    void updateRole(SysRole sysRole);
}
